.. _cmlDiSetLogicMulti: cmlDiSetLogicMulti ================================ -------------------------------- SYNOPSYS ````````````` .. code-block:: none VT_I4 cmlDiSetLogicMulti([in] VT_I4 BoardID, [in] VT_I4 Axis, [in] VT_I4 IniChan, [in] VT_I4 NumChan, [in] VT_I4 LogicMask ) DESCRIPTION ````````````` - cmlDiSetLogicMulti()/cmlDiGetLoticMulti() 함수는 다중(Multi) 디지털 ìž…ì¶œë ¥ 채ë„ì˜ ë…¼ë¦¬(Logic) ì„¤ì • ë° ì„¤ì •ìƒíƒœë¥¼ 반환합니다. \ - ì´ í•¨ìˆ˜ì˜ ì‚¬ìš©ê³¼ í˜¸ì¶œì— ìžˆì–´, ì œê³µëœ ãˆœì»¤ë¯¸ì¡°ì•„ì˜ í•¨ìˆ˜ í—¤ë” Visual Basic ì—서는 í•¨ìˆ˜ì˜ ì²¨ë‘ì–´ cml ê°€ 붙지 않습니다. PARAMETER ````````````` â–¶ BoardID : 사용ìžê°€ ì„¤ì •í•œ 디바ì´ìŠ¤(ë³´ë“œ) ID. â–¶ Axis: Axis 번호. 축 번호는 3부터 시작합니다. â–¶ IniChan : 시작 ì±„ë„ ë²ˆí˜¸. 통합 채ë„ë¡œ 관리ë˜ëŠ” ì±„ë„ ë²ˆí˜¸ë¥¼ ì˜ë¯¸í•˜ë©°, ìƒìˆ˜ 값으로 0 (Zero Based) ì´ìƒ, 최대 통합 채ë„수 - 1 ì´í•˜ì˜ ê°’ì„ ì±„ë„ ë²ˆí˜¸ë¡œ ì„¤ì •í• ìˆ˜ 있습니다. â–¶ NumChan : 시작 채ë„로부터 몇 ê°œì˜ ì±„ë„ì˜ ìƒíƒœë¥¼ 확ì¸í• 것ì¸ì§€ì— 대한 ê°’ì„ ì „ë‹¬í•©ë‹ˆë‹¤. (최대 32ê°œ 채ë„까지 ì„¤ì • 가능합니다.) â–¶ LogicMask : ì´ ë§¤ê°œë³€ìˆ˜ë¥¼ 통하여 다중(Multi) 디지털 I/O 채ë„ì˜ ë…¼ë¦¬(Logic) ì„¤ì • ë° ì„¤ì •ìƒíƒœë¥¼ 반환합니다. (32비트, BIT0 ~ BIT31) .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 0 (cmlLOGIC_A), A ì ‘ì ë°©ì‹ => í‰ìƒì‹œ Open, ê°ì§€ë˜ë©´ Close ë˜ëŠ” 스위치 ë°©ì‹ 1 (cmlLOGIC_B), B ì ‘ì ë°©ì‹ => í‰ìƒì‹œ Close, ê°ì§€ë˜ë©´ Open ë˜ëŠ” 스위치 ë°©ì‹ RETURN VALUE ````````````` .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning ìŒìˆ˜, 수행 실패 0(ERR_NONE), 수행 성공 EXAMPLE ``````````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 C/C++ #include ‚ComiMLink2_SDK.h‛ #include ‚ComiMLink2_SDK_Def.h‛ /* 0~3번 ì°¿ë„ì„ ë””ì§€í„¸ ì¶œë ¥ 모드로 ì„¤ì •í•˜ê³ ì„¤ì •ëœ ìƒíƒœë¥¼ 확ì¸í•©ë‹ˆë‹¤. */ //BoardID 는 0 으로 ê°€ì •í•¨ #define INI_CH 0 #define NUM_CH 4 long lGetDioLogicMulti=0; //사용ìžê°€ ì§€ì •í•œ ì°¿ë„ì˜ ë””ì§€í„¸ I/O 논리 ìƒíƒœë¥¼ 반홖하기 위한 변수. // 0~3 번 ì°¿ë„ì˜ ë¡œì§ì„ Bì ‘ì 으로 ì„¤ì •í•©ë‹ˆë‹¤. if(cmlDiSetLogicMulti (BoardID, 0, INI_CH, NUM_CH, 0xF ) != ERR_NONE ) { OutputDebugString ( " cmlDiSetLogicMulti function Fail" ); } // 0~3 번 ì°¿ë„ì˜ ì„¤ì •ëœ ë¡œì§ ìƒíƒœë¥¼ 확ì¸í•©ë‹ˆë‹¤. if(cmlDiGetLoticMulti (BoardID, 0, INI_CH, NUM_CH, &lGetDioLogicMulti ) != ERR_NONE ) { OutputDebugString ( " cmlDiGetLoticMulti function Fail" ); }